<?php
include_once("../../../programas/include_utiles.php");
include_once("../../../informacion/usuario/class.iusuario.php");
include_once("../../../informacion/personal/class.ipersonal.php");
include_once("../../../entidad/usuario/class.tipo_usuario.php");
include_once("../../../informacion/usuario/class.itipo_usuario.php");
include_once("../../../informacion/usuario/class.imodulo_sistema.php");
include_once("../../../entidad/usuario/class.modulo_sistema.php");
include_once("../../../entidad/empresa/class.proveedor.php");
include_once("../../../entidad/usuario/class.usuario.php");
include_once("../../../gestion/usuario/class.gusuario.php");
include_once("../../../entidad/persona/class.persona.php");
//-----------------------------------------------------------------------------------------------------------------------
$accion_usua=$_REQUEST["accion_usua"];
$buscando=trim($_REQUEST["buscando"]);

$idpersona=$_REQUEST["idpersona"];//idpersona

$idtipo_usuario=$_REQUEST["tipo_usuario"];
$idmodulo_sistema=$_REQUEST["modulo"];
$usuario=$_REQUEST["usuario"];
$contrasena=$_REQUEST["contrasena"];

$tipo_persona=$_REQUEST["tipo_persona"];
$viene=$_REQUEST["viene"];
//-----------------------------------------------------------------------------------------------------------------------
switch ($accion_usua) {
	case "busca_pers":busca_personal($buscando);break;
	case "busca_paci":busca_paciente($buscando);break;	
	case "ver_nuevo":ver_nuevo_usuario($idpersona);break;
	case "guardar_nuevo":guardar_nuevo_usuario($idtipo_usuario,$idmodulo_sistema,$usuario,$contrasena,$idpersona);break;
	case "ver_editar":ver_editar_usuario($idpersona);break;
	case "guardar_editar":guardar_editar_usuario($idtipo_usuario,$idmodulo_sistema,$usuario,$contrasena,$idpersona);break;
	case "elimina":eliminar_usuario($idpersona);break;
	default:ver_usuario();break;
}
//-----------------------------------------------------------------------------------------------------------------------
function ver_usuario(){
	$plantilla=new DmpTemplate("../../../plantillas/comunes/usuario/usuarios_ver.html");
	$plantilla->iniciaBloque("busqueda");
	$plantilla->reemplazaEnBloque("checked1","checked","busqueda");
	$plantilla->presentaPlantilla();
}
//-----------------------------------------------------------------------------------------------------------------------
function busca_personal($buscando){
	//////////////////////////////////////////////OBJETOS///////////////////////////////////////////////////
	$iusuario=new iusuario();	
	////////////////////////////////////////////////ARRAYS///////////////////////////////////////////////////
	$ausuario=$iusuario->buscar_personal($buscando);
	////////////////////////////////////////////////PLANTILLA////////////////////////////////////////////////
	$plantilla=new DmpTemplate("../../../plantillas/comunes/usuario/usuarios_ver.html");
	$plantilla->iniciaBloque("busqueda");
	$plantilla->reemplazaEnBloque("buscando",$buscando,"busqueda");
	$plantilla->reemplazaEnBloque("checked1","checked","busqueda");
	
	if(sizeof($ausuario[id_per])>0){
		$plantilla->iniciaBloque("resultado");
		#--Si viene de alguna operacion arroja mensaje
	    if($_REQUEST["operacion"]){
	        $msj=new DmpTemplate("../../../plantillas/mensajes.tpl");
	        $valor=$_REQUEST["operacion"];
	        $texto=$_REQUEST["texto"];
	        $ruta_img="../../../";
	        $msj->iniciaBloque($valor);
	        $msj->reemplazaEnBloque("texto",$texto,$valor);
	        $msj->reemplazaEnBloque("ruta_img",$ruta_img,$valor);	        
	        $plantilla->reemplazaEnBloque("mensajes",$msj->getPlantillaCadena(),"resultado");
	               
	    }
		$plantilla->reemplazaEnBloque("coincidencias",sizeof($ausuario[id_per]),"resultado");
		///////////////////////////////////////////////RECORRER ARRAYS///////////////////////////////////////////
		for($i=0;$i<sizeof($ausuario[id_per]);$i++){
			$plantilla->iniciaBloque("item");
			$plantilla->reemplazaEnBloque("i",$i+1,"item");
			$plantilla->reemplazaEnBloque("apellidos",$ausuario[apell][$i],"item");
			$plantilla->reemplazaEnBloque("nombres",$ausuario[nomb][$i],"item");
			//links
			$concateno_nuevo="<a href='ausuario.php?accion_usua=ver_nuevo&idpersona=".$ausuario[id_per][$i]."&buscando=".$buscando."&viene=busca_pers'><img src='../../../img/password.gif' title='Crear' width='16' height='16' border='0' class='icono' /></a>";//tamos vuendo iusuario
			$concateno_editar="<a href='ausuario.php?accion_usua=ver_editar&idpersona=".$ausuario[id_per][$i]."&buscando=".$buscando."&viene=busca_pers'><img src='../../../img/edit.gif' title='Editar' width='16' height='16' border='0' class='icono' /></a>";
			$concateno_eliminar="<a href='ausuario.php?accion_usua=elimina&idpersona=".$ausuario[id_per][$i]."&buscando=".$buscando."&viene=busca_pers' onclick=\"return confirm('&iquest;Est&aacute; seguro de ELIMINAR Usuario?');\"><img src='../../../img/Eliminar.gif' title='Eliminar' width='16' height='16' border='0' class='icono' /></a>";
			
			if($ausuario[usua][$i]==""){//no tiene usuario
				$plantilla->reemplazaEnBloque("usuario","--","item");
				$plantilla->reemplazaEnBloque("tipo_usuario","--","item");
				$plantilla->reemplazaEnBloque("modulo_sistema","--","item");
				//link para crear
				$plantilla->reemplazaEnBloque("link_nuevo",$concateno_nuevo,"item");				
			}else{//si tiene usuario
				$otipo_usuario=new tipo_usuario($ausuario[idtipo][$i]);
				$omodulo_sistema=new modulo_sistema($ausuario[idmod][$i]);
				$plantilla->reemplazaEnBloque("usuario",$ausuario[usua][$i],"item");
				$plantilla->reemplazaEnBloque("tipo_usuario",$otipo_usuario->descripcion,"item");
				$plantilla->reemplazaEnBloque("modulo_sistema",$omodulo_sistema->descripcion,"item");				
				//link editar
				$plantilla->reemplazaEnBloque("link_edita",$concateno_editar,"item");
				//link eliminar		
				$plantilla->reemplazaEnBloque("link_elimina",$concateno_eliminar,"item");	
			}			
		}
	}else{
		$plantilla->iniciaBloque("error");
		#--Si viene de alguna operacion arroja mensaje
	    if($_REQUEST["operacion"]){
	        $msj=new DmpTemplate("../../../plantillas/mensajes.tpl");
	        $valor=$_REQUEST["operacion"];
	        $texto=$_REQUEST["texto"];
	        $ruta_img="../../../";
	        $msj->iniciaBloque($valor);
	        $msj->reemplazaEnBloque("texto",$texto,$valor);
	        $msj->reemplazaEnBloque("ruta_img",$ruta_img,$valor);	        
	        $plantilla->reemplazaEnBloque("mensajes",$msj->getPlantillaCadena(),"error");
	               
	    }
	}
	//////////////////////////////////////////PRESENTAR PLANTILLA////////////////////////////////////////////
	$plantilla->presentaPlantilla();
}
//-----------------------------------------------------------------------------------------------------------------------
function busca_paciente($buscando){
	//////////////////////////////////////////////OBJETOS///////////////////////////////////////////////////
	$iusuario=new iusuario();
	////////////////////////////////////////////////ARRAYS///////////////////////////////////////////////////
	$ausuario=$iusuario->buscar_paciente($buscando);
	////////////////////////////////////////////////PLANTILLA////////////////////////////////////////////////
	$plantilla=new DmpTemplate("../../../plantillas/comunes/usuario/usuarios_ver.html");
	$plantilla->iniciaBloque("busqueda");
    $plantilla->reemplazaEnBloque("buscando",$buscando,"busqueda");
    $plantilla->reemplazaEnBloque("checked2","checked","busqueda");
	
	if(sizeof($ausuario[id_per])>0){
		$plantilla->iniciaBloque("resultado");
		#--Si viene de alguna operacion arroja mensaje
	    if($_REQUEST["operacion"]){
	        $msj=new DmpTemplate("../../../plantillas/mensajes.tpl");
	        $valor=$_REQUEST["operacion"];
	        $texto=$_REQUEST["texto"];
	        $ruta_img="../../../";
	        $msj->iniciaBloque($valor);
	        $msj->reemplazaEnBloque("texto",$texto,$valor);
	        $msj->reemplazaEnBloque("ruta_img",$ruta_img,$valor);	        
	        $plantilla->reemplazaEnBloque("mensajes",$msj->getPlantillaCadena(),"resultado");
	               
	    }
		$plantilla->reemplazaEnBloque("coincidencias",sizeof($ausuario[id_per]),"resultado");
		///////////////////////////////////////////////RECORRER ARRAYS///////////////////////////////////////////
		for($i=0;$i<sizeof($ausuario[id_per]);$i++){
			$plantilla->iniciaBloque("item");
			$plantilla->reemplazaEnBloque("i",$i+1,"item");
			$plantilla->reemplazaEnBloque("apellidos",$ausuario[apell][$i],"item");
			$plantilla->reemplazaEnBloque("nombres",$ausuario[nomb][$i],"item");
						
			$concateno_nuevo="<a href='ausuario.php?accion_usua=ver_nuevo&idpersona=".$ausuario[id_per][$i]."&buscando=".$buscando."&viene=busca_paci'><img src='../../../img/password.gif' title='Crear' width='16' height='16' border='0' class='icono' /></a>";
			$concateno_editar="<a href='ausuario.php?accion_usua=ver_editar&idpersona=".$ausuario[id_per][$i]."&buscando=".$buscando."&viene=busca_paci'><img src='../../../img/edit.gif' title='Editar' width='16' height='16' border='0' class='icono' /></a>";
			$concateno_eliminar="<a href='ausuario.php?accion_usua=elimina&idpersona=".$ausuario[id_per][$i]."&buscando=".$buscando."&viene=busca_paci' onclick=\"return confirm('&iquest;Est&aacute; seguro de ELIMINAR Usuario?');\"><img src='../../../img/Eliminar.gif' title='Eliminar' width='16' height='16' border='0' class='icono' /></a>";
			
			if($ausuario[usua][$i]==""){				
				$plantilla->reemplazaEnBloque("usuario","--","item");
				$plantilla->reemplazaEnBloque("tipo_usuario","--","item");	
				$plantilla->reemplazaEnBloque("modulo_sistema","--","item");
				//link para crear
				$plantilla->reemplazaEnBloque("link_nuevo",$concateno_nuevo,"item");				
			}else{
				$otipo_usuario=new tipo_usuario($ausuario[idtipo][$i]);
                $omodulo_sistema=new modulo_sistema($ausuario[idmod][$i]);
				$plantilla->reemplazaEnBloque("usuario",$ausuario[usua][$i],"item");	
				$plantilla->reemplazaEnBloque("tipo_usuario",$otipo_usuario->descripcion,"item");
                $plantilla->reemplazaEnBloque("modulo_sistema",$omodulo_sistema->descripcion,"item");
				//link editar
				$plantilla->reemplazaEnBloque("link_edita",$concateno_editar,"item");
				//link eliminar		
				$plantilla->reemplazaEnBloque("link_elimina",$concateno_eliminar,"item");			
			}			
		}
	}else{
		$plantilla->iniciaBloque("error");
		#--Si viene de alguna operacion arroja mensaje
	    if($_REQUEST["operacion"]){
	        $msj=new DmpTemplate("../../../plantillas/mensajes.tpl");
	        $valor=$_REQUEST["operacion"];
	        $texto=$_REQUEST["texto"];
	        $ruta_img="../../../";
	        $msj->iniciaBloque($valor);
	        $msj->reemplazaEnBloque("texto",$texto,$valor);
	        $msj->reemplazaEnBloque("ruta_img",$ruta_img,$valor);	        
	        $plantilla->reemplazaEnBloque("mensajes",$msj->getPlantillaCadena(),"error");
	               
	    }
	}
	//////////////////////////////////////////PRESENTAR PLANTILLA////////////////////////////////////////////
	$plantilla->presentaPlantilla();
}
//-----------------------------------------------------------------------------------------------------------------------
function ver_nuevo_usuario($idpersona){	
	global $buscando,$viene;
	//////////////////////////////////////////////OBJETOS///////////////////////////////////////////////////
	$itipo_usuario=new itipo_usuario();
	$imodulo_sistema=new imodulo_sistema();	
	$opersona=new persona($idpersona);	
	////////////////////////////////////////////////ARRAYS///////////////////////////////////////////////////
	$atipo_usuario=$itipo_usuario->lista_tipo_usuario();
	$amodulo_sistema=$imodulo_sistema->lista_modulo_sistema();
	////////////////////////////////////////////////PLANTILLA////////////////////////////////////////////////
	$plantilla=new DmpTemplate("../../../plantillas/comunes/usuario/usuarios_ver.html");
	$plantilla->iniciaBloque("busqueda");
    $plantilla->reemplazaEnBloque("buscando",$buscando,"busqueda");
    if($viene=="busca_pers"){
    	$plantilla->reemplazaEnBloque("checked1","checked","busqueda");
    }else{
    	$plantilla->reemplazaEnBloque("checked2","checked","busqueda");
    }
    
	$plantilla->iniciaBloque("datos_usuario");
	$plantilla->reemplazaEnBloque("titulo","Nuevo","datos_usuario");
	
	$plantilla->reemplazaEnBloque("apellidos",$opersona->apellido_p." ".$opersona->apellido_m,"datos_usuario");
	$plantilla->reemplazaEnBloque("nombres",$opersona->nombres,"datos_usuario");	
	$plantilla->reemplazaEnBloque("idpersona",$idpersona,"datos_usuario");	
	$plantilla->reemplazaEnBloque("buscando",$buscando,"datos_usuario");
	$plantilla->reemplazaEnBloque("viene",$viene,"datos_usuario");
	$plantilla->reemplazaEnBloque("accion_usua","guardar_nuevo","datos_usuario");//pa guardar el nuevo usuario
	///////////////////////////////////////////////RECORRER ARRAYS///////////////////////////////////////////
	for($i=0;$i<sizeof($atipo_usuario[id]);$i++){
		$plantilla->iniciaBloque("tipo_usuario");
		$plantilla->reemplazaEnBloque("idtipo_usuario",$atipo_usuario[id][$i],"tipo_usuario");
		$plantilla->reemplazaEnBloque("tipo_usuario",$atipo_usuario[desc][$i],"tipo_usuario");
	}
	for($j=0;$j<sizeof($amodulo_sistema[id]);$j++){
		$plantilla->iniciaBloque("modulo_sistema");
		$plantilla->reemplazaEnBloque("idmodulo_sistema",$amodulo_sistema[id][$j],"modulo_sistema");
		$plantilla->reemplazaEnBloque("modulo_sistema",$amodulo_sistema[desc][$j],"modulo_sistema");
	}
	//////////////////////////////////////////PRESENTAR PLANTILLA////////////////////////////////////////////
	$plantilla->presentaPlantilla();
}
//-----------------------------------------------------------------------------------------------------------------------
function guardar_nuevo_usuario($idtipo_usuario,$idmodulo_sistema,$usuario,$contrasena,$idpersona){
	global $buscando,$viene;
	//creo el objeto gusuario
	$gusuario=new gusuario();
	//mandamos y recibimos variables
	$respuesta=$gusuario->nuevo_usuario($idtipo_usuario,$idmodulo_sistema,$usuario,$contrasena,$idpersona);
	if($respuesta=="paciente"){
		header("Location: ausuario.php?accion_usua=".$viene."&buscando=".$buscando."&operacion=guarda_ok&texto=del Usuario Paciente");
	}else{
		header("Location: ausuario.php?accion_usua=".$viene."&buscando=".$buscando."&operacion=guarda_ok&texto=del Usuario Personal");
	}	
}
//-----------------------------------------------------------------------------------------------------------------------
function ver_editar_usuario($idpersona){
	global $buscando,$viene;
	//////////////////////////////////////////////OBJETOS///////////////////////////////////////////////////
	$itipo_usuario=new itipo_usuario();
	$imodulo_sistema=new imodulo_sistema();
	$opersona=new persona($idpersona);
	$ousuario=new usuario($idpersona);
	////////////////////////////////////////////////ARRAYS///////////////////////////////////////////////////
	$atipo_usuario=$itipo_usuario->lista_tipo_usuario();
	$amodulo_sistema=$imodulo_sistema->lista_modulo_sistema();
	////////////////////////////////////////////////PLANTILLA////////////////////////////////////////////////
	$plantilla=new DmpTemplate("../../../plantillas/comunes/usuario/usuarios_ver.html");
	$plantilla->iniciaBloque("busqueda");
    $plantilla->reemplazaEnBloque("buscando",$buscando,"busqueda");
    if($viene=="busca_pers"){
    	$plantilla->reemplazaEnBloque("checked1","checked","busqueda");
    }else{
    	$plantilla->reemplazaEnBloque("checked2","checked","busqueda");
    }
    
	$plantilla->iniciaBloque("datos_usuario");
	$plantilla->reemplazaEnBloque("titulo","Editar","datos_usuario");
	
	$plantilla->reemplazaEnBloque("apellidos",$opersona->apellido_p." ".$opersona->apellido_m,"datos_usuario");
	$plantilla->reemplazaEnBloque("nombres",$opersona->nombres,"datos_usuario");	
	$plantilla->reemplazaEnBloque("idpersona",$idpersona,"datos_usuario");
	$plantilla->reemplazaEnBloque("buscando",$buscando,"datos_usuario");
	$plantilla->reemplazaEnBloque("viene",$viene,"datos_usuario");
	$plantilla->reemplazaEnBloque("accion_usua","guardar_editar","datos_usuario");//pa guardar el nuevo usuario
	//$plantilla->reemplazaEnBloque("contra_edit","Ingrese Nueva Contrase&ntilde;a","datos_usuario");
	//$plantilla->reemplazaEnBloque("confir_edit","Vuelva a Ingresar Nueva Contrase&ntilde;a","datos_usuario");
	
	$plantilla->reemplazaEnBloque("usuario",$ousuario->usuario,"datos_usuario");
	//$plantilla->reemplazaEnBloque("contrasena",$ousuario->clave,"datos_usuario");
	///////////////////////////////////////////////RECORRER ARRAYS///////////////////////////////////////////
	for($i=0;$i<sizeof($atipo_usuario[id]);$i++){
		$plantilla->iniciaBloque("tipo_usuario");
		$plantilla->reemplazaEnBloque("idtipo_usuario",$atipo_usuario[id][$i],"tipo_usuario");
		$plantilla->reemplazaEnBloque("tipo_usuario",$atipo_usuario[desc][$i],"tipo_usuario");
		if($atipo_usuario[id][$i]==$ousuario->idtipo_usuario){
			$plantilla->reemplazaEnBloque("selected","selected","tipo_usuario");
		}else{
			$plantilla->reemplazaEnBloque("selected","","tipo_usuario");
		}
	}
	for($j=0;$j<sizeof($amodulo_sistema[id]);$j++){
		$plantilla->iniciaBloque("modulo_sistema");
		$plantilla->reemplazaEnBloque("idmodulo_sistema",$amodulo_sistema[id][$j],"modulo_sistema");
		$plantilla->reemplazaEnBloque("modulo_sistema",$amodulo_sistema[desc][$j],"modulo_sistema");
		if($amodulo_sistema[id][$j]==$ousuario->idmodulo_sistema){
			$plantilla->reemplazaEnBloque("selected","selected","modulo_sistema");
		}else{
			$plantilla->reemplazaEnBloque("selected","","modulo_sistema");
		}
	}
	//////////////////////////////////////////PRESENTAR PLANTILLA////////////////////////////////////////////
	$plantilla->presentaPlantilla();
}
//-----------------------------------------------------------------------------------------------------------------------
function guardar_editar_usuario($idtipo_usuario,$idmodulo_sistema,$usuario,$contrasena,$idpersona){
	global $buscando,$viene;
	//creo el objeto gusuario
	$gusuario=new gusuario();
	//mandamos y recibimos variables
	$respuesta=$gusuario->actualiza_usuario($idtipo_usuario,$idmodulo_sistema,$usuario,$contrasena,$idpersona);
	if($respuesta=="paciente"){
        header("Location: ausuario.php?accion_usua=".$viene."&buscando=".$buscando."&operacion=actualiza_ok&texto=del Usuario Paciente");
    }else{
        header("Location: ausuario.php?accion_usua=".$viene."&buscando=".$buscando."&operacion=actualiza_ok&texto=del Usuario Personal");
    }    
}
//-----------------------------------------------------------------------------------------------------------------------
function eliminar_usuario($idpersona){
	global $buscando,$viene;
	//creo el objeto gusuario
	$gusuario=new gusuario();
	//mandamos y recibimos variables
	$respuesta=$gusuario->elimina_usuario($idpersona);	
	if($respuesta=="paciente"){
        header("Location: ausuario.php?accion_usua=".$viene."&buscando=".$buscando."&operacion=elimina_ok&texto=del Usuario Paciente");
    }else{
    	if($respuesta=="personal"){
    		header("Location: ausuario.php?accion_usua=".$viene."&buscando=".$buscando."&operacion=elimina_ok&texto=del Usuario Paciente");
    	}else{
    		header("Location: ausuario.php?accion_usua=".$viene."&buscando=".$buscando."&operacion=elimina_error&texto=del Usuario (Tiene una Farmacia asignada)");
    	}        
    }    
}
//-----------------------------------------------------------------------------------------------------------------------
?>